#!/usr/bin/env python3
# -*- coding: utf-8 -*-
__author__ = '汤小洋'

import sys
import os
import math
import random
from datetime import datetime, timedelta  # 从datetime模块中导入datetime、timedelta类
import time

'''
sys
'''
print(sys.version)  # Python版本
print(sys.platform)  # 系统平台
print(sys.path)  # 模块搜索路径， 包含了Python解释器查找模块时搜索的路径
print(sys.modules)  # 当前程序中引入的所有模块
print(sys.getdefaultencoding())  # 默认字符集
# sys.exit('程序出现异常，结束！')  # 退出解释器
print('---------------------------------------')

'''
os
'''
print(os.environ)  # 系统的环境变量
print(os.getcwd())  # 当前的工作目录
print(os.listdir('.'))  # 列出指定目录下的内容
# print(os.system('ping 127.0.0.1'))  # 执行系统命令
print(os.path.exists('/home/soft01'))  # 判断路径是否存在
print('---------------------------------------')

'''
math
'''
print(math.pi)  # 圆周率
print(math.ceil(3.4))  # 向上取整
print(math.floor(3.4))  # 向下取整
print(math.pow(2, 3))  # 阶乘
print(math.trunc(5.6))  # 截尾取整
print('---------------------------------------')

'''
random
'''
print(random.random())  # 返回[0,1)之间的随机浮点数
print(random.randint(1, 100))  # 返回[1,100]之间的随机整数
print(random.uniform(1, 100))  # 返回[1,100]之间的随机小数
print(random.choice([3, 8, 13, 25, 250]))  # 从列表中随机返回一个元素
print(random.sample([3, 8, 13, 25, 250], 3))  # 从列表中随机返回n个元素
print('---------------------------------------')

'''
datetime
'''
print(datetime.now(), type(datetime.now()))  # 返回当前日期时间，类型为datetime
print(datetime(2018, 12, 4, 12, 30, 25))  # 返回指定的日期时间
print(datetime(2018, 12, 4))  # 返回指定的日期
# datetime和str之间的转换
print(datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S'))  # 将datetime转换为指定格式的字符串
print(datetime.strftime(datetime.now(), '%Y{0}%m{1}%d{2} %H:%M:%S').format('年', '月', '日'))  # 因为格式化字符串中不能包含中文，所以用此方法
print(datetime.strptime('2018-2-14', '%Y-%m-%d'))  # 将字符串转换为datetime
# 对日期做加减操作
print('明天：', datetime.now() + timedelta(days=1))  # timedelta表示两个时间之间的时间差
print('前一秒：', datetime.now() - timedelta(seconds=1))

print('两个日期之间相隔的天数：', datetime.now() - datetime(1970, 1, 1))

print('---------------------------------------')

'''
time
'''
# 时间处理
print(time.time())  # 返回当前时间的时间戳，自1970年1月1日00:00:00以来的秒数
print(time.localtime())  # 返回当前本地时间，东八区，类型为struct_time
print(time.gmtime())  # 返回当前UTC时间，0时区
print(time.ctime())  # 返回当前时间的易读字符串表示
# 时间格式化
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()))  # 将struct_time转换为指定格式字符串
print(time.strptime('2018-2-14', '%Y-%m-%d'))  # 将字符串转换为struct_time

time.sleep(5)  # 休眠5秒
print(1111111)
